package Narzedzia;

import java.io.IOException;
import java.util.List;

import ZmiennaLingwistyczna.WartoscLingwistyczna;

import com.thoughtworks.xstream.XStream;
import com.thoughtworks.xstream.io.xml.DomDriver;

import PodsumowaniaLingwistyczne.ISumaryzator;
import PodsumowaniaLingwistyczne.Kwalifikator;
import PodsumowaniaLingwistyczne.Kwantyfikator;

public class SerializacjaXml {
	
	
	public static void zapiszWartosciLingwistyczne(String sciezka, List<WartoscLingwistyczna> listaWartosciLingwistycznych) throws IOException{

		XStream xstream = new XStream(new DomDriver());
		String xml = xstream.toXML(listaWartosciLingwistycznych);
		PlikTekstowy.zapiszZawartoscDoPliku(sciezka, xml);
	}
	
	public static List<WartoscLingwistyczna> wczytajWartosciLingwistyczne(String sciezka) throws IOException{

		XStream xstream = new XStream(new DomDriver());
		String xml = PlikTekstowy.wczytajZawartoscPliku(sciezka);
		List<WartoscLingwistyczna> listaWartosciLingwistycznych = (List<WartoscLingwistyczna>)xstream.fromXML(xml);
		return listaWartosciLingwistycznych;
	}
	
	
	public static void zapiszSumaryzatory(String sciezka, List<ISumaryzator> listaSumaryzatorow) throws IOException{

		XStream xstream = new XStream(new DomDriver());
		String xml = xstream.toXML(listaSumaryzatorow);
		PlikTekstowy.zapiszZawartoscDoPliku(sciezka, xml);
	}
	
	public static List<ISumaryzator> wczytajSumaryzatory(String sciezka) throws IOException{

		XStream xstream = new XStream(new DomDriver());
		String xml = PlikTekstowy.wczytajZawartoscPliku(sciezka);
		List<ISumaryzator> listaSumaryzatorow = (List<ISumaryzator>)xstream.fromXML(xml);
		return listaSumaryzatorow;
	}
	

	
	public static void zapiszKwantyfikatory(String sciezka, List<Kwantyfikator> listaKwantfikatorow) throws IOException{

		XStream xstream = new XStream(new DomDriver());
		String xml = xstream.toXML(listaKwantfikatorow);
		PlikTekstowy.zapiszZawartoscDoPliku(sciezka, xml);
	}
	
	public static List<Kwantyfikator> wczytajKwantyfikatory(String sciezka) throws IOException{

		XStream xstream = new XStream(new DomDriver());
		String xml = PlikTekstowy.wczytajZawartoscPliku(sciezka);
		List<Kwantyfikator> listaKwantfikatorow = (List<Kwantyfikator>)xstream.fromXML(xml);
		return listaKwantfikatorow;
	}

	public static void zapiszKwalifikatory(String sciezka, List<Kwalifikator> listaKwalifikatorow) throws IOException{

		XStream xstream = new XStream(new DomDriver());
		String xml = xstream.toXML(listaKwalifikatorow);
		PlikTekstowy.zapiszZawartoscDoPliku(sciezka, xml);
	}
	
	public static List<Kwalifikator> wczytajKwalifikatory(String sciezka) throws IOException{

		XStream xstream = new XStream(new DomDriver());
		String xml = PlikTekstowy.wczytajZawartoscPliku(sciezka);
		List<Kwalifikator> listaKwalifikatorow = (List<Kwalifikator>)xstream.fromXML(xml);
		return listaKwalifikatorow;
	}
}
